package com.hjm.project.formalPos.formalPos.mapper;

import java.util.List;
import java.util.Map;

import com.hjm.project.formalPos.formalPos.domain.CardFeePos;
import com.hjm.project.formalPos.formalPos.domain.FormalPos;
import com.hjm.project.formalPos.formalPos.domain.FormalPosVo;

/**
 * POS终端信息Mapper接口
 *
 * @author LOVE
 * @date 2020-11-26
 */
public interface FormalPosMapper
{
    /**
     * 查询POS终端信息
     *
     * @param id POS终端信息ID
     * @return POS终端信息
     */
    public FormalPos selectFormalPosById(Long id);

    public FormalPos selectFormalPosByPosNo(String posNo);

    public FormalPos selectFormalPosBySn(String sn);

    /**
     * 查询POS终端信息列表
     *
     * @param formalPos POS终端信息
     * @return POS终端信息集合
     */
    public List<FormalPos> selectFormalPosList(FormalPos formalPos);

    /**
     * 新增POS终端信息
     *
     * @param formalPos POS终端信息
     * @return 结果
     */
    public int insertFormalPos(FormalPos formalPos);
    public int insertFormalPosVo(FormalPosVo formalPosVo);

    /**
     * 修改POS终端信息
     *
     * @param formalPos POS终端信息
     * @return 结果
     */
    public int updateFormalPos(FormalPos formalPos);
    public int updateFormalPosVo(FormalPosVo formalPosVo);


    public int updateFormalPosByMerNo(FormalPos formalPos);

    /**
     * 删除POS终端信息
     *
     * @param id POS终端信息ID
     * @return 结果
     */
    public int deleteFormalPosById(Long id);

    /**
     * 批量删除POS终端信息
     *
     * @param ids 需要删除的数据ID
     * @return 结果
     */
    public int deleteFormalPosByIds(String[] ids);

    public List<FormalPos> selectFormalYbPosList(FormalPos formalPos);

    public Map selectFormalYbPosListCounter(FormalPos formalPos);

    /**
     * 绑定数据
     *
     * @param posno
     * @return
     */
    public int isBoundMaps(String posno);

    /**
     * 是否是客户的机具
     * @param posno
     * @return
     */
    public int getIsConsume(String posno);

    /**
     * 商户机具查询
     * @param merno
     * @return
     */
    public Map getMerForPos(String merno);

    /**
     * 商户机器
     * @param posno
     * @return
     */
    public Map getMachineNo(String posno);

    /**
     * 修改
     * @param posno
     * @return
     */
    public int updateBranchPosISBOUND1(String posno);

    /**
     * 修改
     * @param posno
     * @return
     */
    public int updateBranchPosISBOUND2(String posno);

    /**
     * 查询卡费终端信息
     *
     * @param formalPos 查询条件
     * @return 卡费终端信息
     */
    public List<CardFeePos> selectCardFeePos(CardFeePos cardFeePos);

    FormalPos selectFormalPosByMerNo(String merNo);

    FormalPos selectFormalPosByLdMerno(String merNo);
}
